<?php

namespace App\Http\Controllers\Admin\System;

use App\Http\Controllers\Controller;
use App\Models\SystemGroup;
use App\Traits\Controllers\AdminTraits;
use App\Transformers\System\SystemGroupTransformer;
use Illuminate\Http\Request;

class SystemGroupController extends Controller
{
    use AdminTraits;

    public $model = SystemGroup::class;
    public $transformer = SystemGroupTransformer::class;

    public function rules(Request $request): array
    {
        switch ($request->method()) {
            case 'PUT':
            case 'PATCH':
            case 'POST':
                return [
                    'name' => 'required|min:2|max:15',
                    'info' => 'required',
                    'config_name' => 'required',
                    'fields' => 'required',
                ];
        }
        return [];
    }

    /**
     * 验证信息
     *
     * @return array
     */
    public function ruleMessages(): array
    {
        return [
            'name.required' => '数据组名称 不能为空',
            'name.min' => '数据组名称 不能小于2',
            'name.max' => '数据组名称 不能大于15',
            'info.required' => '数据简介 不能为空',
            'config_name.required' => '数据字段 不能为空',
            'fields.required' => '数据组字段以及类型 不能为空',
        ];
    }
}
